//  处理多次点击

// 防止处理多次点击
// <image class="CN_img03" @click="$noMultipleClicks(tapDownLoad,'111')" src="/static/images/home/downLoad.png" mode="aspectFit"></image>
function noMultipleClicks(methods, info) {
	// methods是点击后需要执行的函数， info是函数需要传的参数
	let that = this;
	if (that.noClick) {
		// 第一次点击
		that.noClick = false;
		if ((info && info !== '') || info == 0) {
			// info是执行函数需要传的参数
			methods(info);
		} else {
			methods();
		}
		setTimeout(() => {
			that.noClick = true;
		}, 5000)
	} else {
		//  这里是重复点击的判断

	}
}
// //导出
export default noMultipleClicks


// ---------------------------------
// 其他   https://ext.dcloud.net.cn/plugin?id=812
// //一定时间内禁止重复调用模式（例：3秒内禁止重复执行）
// this.$jiuaiDebounce.canDoFunction({
//     key:"事件名",//基于此值判断是否可以操作，如两个方法传入了同样的key，则会混淆，建议传入调用此事件的方法名，简单好梳理
//     time:3000,//如果传入time字段，则为定时器后，自动解除锁定状态，单位（毫秒）
//     success:()=>{//成功中调用应该操作的方法，被锁定状态不会执行此代码块内的方法
//         console.log('我被点击了')
//     }
// })

// //防重复请求（例：请求成功/失败后执行），不传time字段，或者time字段==false时是此逻辑

// 在需要解锁的时候，调用this.$jiuaiDebounce.releaseKey("事件名")；来解除事件锁定
// this.$jiuaiDebounce.canDoFunction({
//     key:"事件名",
//     success:()=>{//成功中调用应该操作的方法，被锁定状态不会执行此代码块内的方法
//         uni.request({
//             success:()=>{
//                 //this.$jiuaiDebounce.releaseKey("事件名")
//             },
//             fail:()=>{
//                 //this.$jiuaiDebounce.releaseKey("事件名")
//             },
//             complete:()=>{
//                 //this.$jiuaiDebounce.releaseKey("事件名")
//             }
//         })
//     }
// })
// export default {
// 	a: {},
// 	canDoFunction(e = {}) {
// 		if (!this.a[e.key]) {
// 			this.lockKey(e.key);
// 			e.success && e.success();
// 			if (e.time) {
// 				setTimeout(() => {
// 					this.releaseKey(e.key)
// 				}, e.time)
// 			}
// 		} else {
// 			e.fail && e.fail()
// 		}
// 	},
// 	releaseKey(key) {
// 		delete this.a[key]
// 	},
// 	lockKey(key) {
// 		this.a[key] = true
// 	},
// }